# Makefile maitre

# compilateur
#export CC = gcc
# options de compilation
#export CCFLAGS =-Wall -Wextra -ansi -pedantic -g -O2 -lpthread
# options de l'edition des liens
#export LDFLAGS =-lm
# repertoire contenant les objets
#OBJDIR = obj
#BINDIR = bin
#SERVEUR_DIR = Serveur
#PCDUINO_MANAGER_DIR = PcDuinoManager

#SRC= $(wildcard *.c)
#OBJ= $(wildcard *.o), $(SRC:.c=.o)
#EXEC = main

#all: $(EXEC)

#$(EXEC):$(OBJ)
#	@mkdir -p $(BINDIR)
#	@mkdir -p $(OBJDIR)
	
#	@(cd $(SERVEUR_DIR) && $(MAKE))
#	@(cd $(PCDUINO_MANAGER_DIR) && $(MAKE))
	
#	$(CC) $(LDFLAGS) -o $@ $(OBJ)
	
# Serveur

# compilateur
CC = gcc
# options de compilation
CCFLAGS = -g -O2 -lpthread -Wall
# options de l'edition des liens
LDFLAGS =-lm
# repertoire de sortie des objets
OBJDIR = .
BINDIR = .
# liste des fichiers objets
SRC= $(wildcard *.c)
OBJ= $(SRC:.c=.o)
OBJ := $(addprefix $(OBJDIR)/, $(OBJ))
EXE = main
 
# regle finale pour la creation de l'executable
$(EXE):$(OBJ)
	$(CC) $(LDFLAGS) -o $(BINDIR)/$@ $(OBJ)
 
# compiler tous les .c en .o
$(OBJDIR)/%.o: %.c
	$(CC) -o $@ -c $< $(CCFLAGS)
 
clean:
	rm -rf $(OBJDIR)/*.o $(BINDIR)/$(EXE)

